package com.zbkj.crmeb.store.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.common.PageParamRequest;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageInfo;
import com.zbkj.crmeb.store.model.StoreProductDistribute;
import com.zbkj.crmeb.store.request.StoreProductDistributeRequest;
import com.zbkj.crmeb.store.response.StoreProductDistributeResponse;

import java.util.List;

public interface StoreProductDistributeService extends IService<StoreProductDistribute> {

    /**
     * 功能描述: 保存/修改商品组信息
     * @Param: [request, creatorId]
     * @Return: java.lang.Boolean
     * @Author: wangzh
     * @Date: 2022/11/11 9:44
     */
    Boolean saveProductGroup(StoreProductDistributeRequest request);

    /**
     * 功能描述: 根据商品组id获取详情信息
     * @Param: [id, page]
     * @Return: com.zbkj.crmeb.store.response.StoreProductDistributeResponse
     * @Author: wangzh
     * @Date: 2022/11/11 14:29
     */
    StoreProductDistributeResponse getProductGroupById(Integer id);

    /**
     * 功能描述: 获取商品组信息列表
     * @Param: [request]
     * @Return: java.util.List<com.zbkj.crmeb.store.response.StoreProductDistributeResponse>
     * @Author: wangzh
     * @Date: 2022/11/11 15:19
     */
    PageInfo<StoreProductDistributeResponse> getProductGroupList(String name, PageParamRequest request);

    /**
     * 功能描述: 分发商品给供应商
     * @Param: [request]
     * @Return: java.lang.Boolean
     * @Author: wangzh
     * @Date: 2022/11/11 15:38
     */
    Boolean distributeProductToSupplier(StoreProductDistributeRequest request);

    /**
     * 功能描述: 通过id删除商品分发
     * @Param: [id]
     * @Return: java.lang.Boolean
     * @Author: wangzh
     * @Date: 2022/11/14 13:41
     */
    Boolean deleteProductGroupById(Integer id);
}
